.\"   $Id: addbddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddnode \- adds a new \fBbdd\fP node in the \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSIS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddnode( BddSystem, Index, High, Low  )
  bddsystem \(**BddSystem;
  bddindex   Index;
  bddnode   \(**High;
  bddnode   \(**Low;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIIndex\fP
The \fBbdd\fP index.
.TP
\fIHigh\fP
The \fBbdd\fP high pointer.
.TP
\fILow\fP
The \fBbdd\fP low pointer.
.SH DESCRIPTION
\fBaddbddnode\fP adds a new node with the index \fIIndex\fP,
\fIHigh\fP as HIGH pointer, and \fILow\fP as LOW pointer
in the \fBbdd\fP system \fIBddSystem\fP. If the \fBbdd\fP node exist
already \fBaddbddnode\fP return its pointer.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddnode\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range"
.ft R
.RS
The \fIIndex\fP parameter must be a valid index.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
   bddsystem  \(**BddSystem;
   bddcircuit \(**BddCircuit;
   bddnode    \(**BddNode;
   chain_list \(**Expr;
   BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
   BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
   BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
   BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
   Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
   /* displays (not i0) */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem \(**)0 );
   destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)


.so man1/alc_bug_report.1

